Many data storage devices, such as flash memory devices, store data in cells of non-volatile media. A physical property of each cell, such as a stored charge, voltage, material phase, electrical resistance, magnetization, or the like, is alterable to encode data. A cell's physical property may be variable across a range, which may be divided into discrete states, so that different states correspond to different data values. Sensing whether the cell's physical property satisfies one or more read thresholds (e.g., voltage thresholds, resistivity thresholds, or the like) within its range determines the cell's state, thus allowing recovery of a stored data value.
The data-encoding physical property of a cell may vary over time due to cell damage, charge leakage, temperature effects, disturbances from nearby cells, or the like. An error may occur if the cell moves from one state into an adjacent state. As storage density increases, feature size shrinks, making the cells more susceptible to such disturbances. Parity data may be used to recover data when errors occur from such disturbances.